package com.cuiyc.project.easyexcel;

import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.converters.string.StringImageConverter;
import com.alibaba.excel.metadata.data.WriteCellData;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.Getter;

import java.io.File;
import java.io.InputStream;
import java.net.URL;

@Data
@EqualsAndHashCode
public class ImageDemoData {
    
    /**
     * 这些类型都是EasyExcel支持的图片类型，我们只要传入即可，不用关心实际实现
     */
    // 方法1：直接以File文件的形式
    private File file;

    // 方法2：以输入流的形式
    private InputStream inputStream;

    // 方法3：以图片路径的形式，由于String类型默认是写入文字，所以要指定一个converter
    @ExcelProperty(converter = StringImageConverter.class)
    private String string;
    
    // 方法4：字节数组，一般都是File或者InputStream转换而来
    private byte[] byteArray;

    // 方法5：网络图片，只需要url地址
    private URL url;

    // 方法6：复杂形式
    private WriteCellData<Void> writeCellData;
}